#define _CRT_SECURE_NO_WARNINGS  1
#include <iostream>
#include<vector>
#include<stack>
using namespace std;


/*

int main()
{

    int n;
    cin >> n;
    vector<int> v;
    v.resize(n);
    v[0] = 0;
    v[1] = 1;

    for (int i = 2; i < v.size(); i++)
    {
        v[i] = v[i - 2] + v[i - 1];
    }
    int i = 0;
    for (i = 0; i < v.size() - 1; i++)
    {
        if (n >= v[i] && n <= v[i + 1])
        {
            break;
        }
    }

    cout <<   ( abs(n - v[i]) > abs(n-v[i+1])? abs(n - v[i + 1]): abs(n - v[i]));




    return 0;
}

*/




class Parenthesis {
public:
    bool chkParenthesis(string A, int n)
    {
        stack<char> s;
        if (n == 0 || n % 2 != 0)
        {
            return false;
        }
        for (char& i : A)
        {
            if (i == '(')
            {
                s.push(i);
            }

            else if (i == ')')
            {
                if (s.empty())
                {
                    return false;
                }
                char top = s.top();
                if (top != '(')
                {
                    return false;
                }
                else
                {
                    s.pop();
                }
            }
            else
            {
                return false;
            }
        }

        if (s.empty())
        {
            return true;
        }
        else
        {
            return false;
        }
    }
};



//class A
//{
//private:
//    int a;
//public:
//    const int b;
//    float*& c;
//    static const char* d;
//    static double* e;
//
//    A()
//        :b(3)
//        //c(_x)
//    {}
//};


void test1()
{
    float x = 3.14;
    float* px = &x;
    //A a1();
}


//int func(int a=0, int b)
//{
//    return a + b;
//}
int func(int a, int b=0)
{
    return a + b;
}

void test2()
{
    func(1,2);
}

int main()
{
    test1();
    test2();
}